package com.skt.domain.PO;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.time.LocalDateTime;

/**
 * 租赁协议实体类
 */
@Data
@TableName("rental_agreement")
public class RentalAgreement {

    /**
     * 主键 ID，自增
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 关联订单ID
     */
    @TableField("order_id")
    private Long orderId;

    /**
     * 协议编号
     */
    @TableField("agreement_no")
    private String agreementNo;

    /**
     * 协议内容
     */
    @TableField("content")
    private String content;

    /**
     * 用户签名（base64或URL）
     */
    @TableField("signature_user")
    private String signatureUser;

    /**
     * 商家签名
     */
    @TableField("signature_merchant")
    private String signatureMerchant;

    /**
     * 用户签署人ID
     */
    @TableField("signed_by_user")
    private Long signedByUser;

    /**
     * 商家签署人ID
     */
    @TableField("signed_by_merchant")
    private Long signedByMerchant;

    /**
     * 用户签署时间
     */
    @TableField("user_signed_at")
    private LocalDateTime userSignedAt;

    /**
     * 商家签署时间
     */
    @TableField("merchant_signed_at")
    private LocalDateTime merchantSignedAt;

    /**
     * 状态：1-待签署，2-用户已签，3-双方已签，4-已取消
     */
    @TableField("status")
    private Integer status;

    @TableField(value = "created_at", fill = FieldFill.INSERT)
    private LocalDateTime createdAt;

    @TableField(value = "updated_at", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updatedAt;
}